home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-05-01 | 15.3 KB | 364 lines | [TEXT/MPS ] |
- /*
- File: OCEMailbox.idl
-
- Contains: Apple Open Collaboration Environment OCEMaibox Interfaces.
-
- Version: Technology: AOCE Toolbox 1.02
- Release: Universal Interfaces 3.0d3 on Copland DR1
-
- Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
-
- Bugs?: If you find a problem with this file, send the file and version
- information (from above) and the problem description to:
-
- Internet: apple.bugs@applelink.apple.com
- AppleLink: APPLE.BUGS
-
- */
- #ifndef __OCEMAILBOX_IDL__
- #define __OCEMAILBOX_IDL__
-
- #include <somobj.idl>
- #include <somcls.idl>
-
- #ifndef __OCE_IDL__
- #include <OCE.idl>
- #endif
- #ifndef __OCEMAIL_IDL__
- #include <OCEMail.idl>
- #endif
- #ifndef __OCEMESSAGING_IDL__
- #include <OCEMessaging.idl>
- #endif
- #ifndef __OCESTANDARDMAIL_IDL__
- #include <OCEStandardMail.idl>
- #endif
-
- #ifdef __SOMIDL__
-
- #if FOR_SYSTEM7_ONLY
- /* opaque references, iterators, and progress indicator */
- typedef OpaquePtr OpaqueMBMailboxRef;
-
- typedef OpaquePtr OpaqueMBContainerRef;
-
- typedef OpaquePtr OpaqueMBMailboxIterator;
-
- typedef OpaquePtr OpaqueMBMailItemIterator;
-
- typedef OpaquePtr OpaqueMBProgressIndicator;
-
- typedef OpaquePtr OpaqueMBCopyOperationRef;
-
- typedef OpaquePtr OpaqueMBNotificationRef;
-
- typedef OpaquePtr MBMailboxRef; /* Substituted OpaquePtr for “OpaqueMBMailboxRef*” */
-
- typedef OpaquePtr MBOpenContainerRef; /* Substituted OpaquePtr for “OpaqueMBContainerRef*” */
-
- typedef OpaquePtr MBMailboxIterator; /* Substituted OpaquePtr for “OpaqueMBMailboxIterator*” */
-
- typedef OpaquePtr MBMailItemIterator; /* Substituted OpaquePtr for “OpaqueMBMailItemIterator*” */
-
- typedef OpaquePtr MBProgressIndicator; /* Substituted OpaquePtr for “OpaqueMBProgressIndicator*” */
-
- typedef OpaquePtr MBCopyOperationRef; /* Substituted OpaquePtr for “OpaqueMBCopyOperationRef*” */
-
- typedef OpaquePtr MBNotificationRef; /* Substituted OpaquePtr for “OpaqueMBNotificationRef*” */
-
- /**********************************************************/
- /* Error codes, will be moved to OCEErrors.h */
- /***********************************************************/
- /**********************************************************/
- /* Mailbox Gestalt Values */
- /**********************************************************/
- /**********************************************************/
- /* Mailbox Data Structures */
- /**********************************************************/
- typedef UInt32 MBMailboxToken;
-
- typedef SOMLargeStruct MBMailboxData; /* Derived from a struct of 96 bytes in size */
-
- /* MBPermissions control whether other applications can detect that mailbox has been mounted */
- typedef UInt32 MBPermissions;
-
- /**********************************************************/
- /* Container Data Structures */
- /***********************************************************/
- /*
- These structures are used to manipulate and list the mailbox containers.
- A container is a logical collection of mailbox items. Examples of some
- standard containers are the inbox and the outbox.
- */
- typedef UInt32 MBContainerType;
-
- typedef SOMLargeStruct MBContainerToken; /* Derived from a struct of 12 bytes in size */
-
- typedef UInt32 MBContainerStatus;
-
- typedef UInt32 MBContainerFlags;
-
- typedef UInt32 MBContainerLocation;
-
- typedef UInt32 MBContainerClass;
-
- typedef SOMLargeStruct MBContainerData; /* Derived from a struct of 124 bytes in size */
-
- typedef UInt8 AddressAsType;
-
- /*
- AddressAsType is actually an enumerated type and its constants
- kAddressedAs_TO, kAddressedAs_CC, and kAddressedAs_BCC are
- defined in OCEMail.h in an anonymous enum list.
- */
- typedef SOMLargeStruct MBInboxLetterData; /* Derived from a struct of 176 bytes in size */
-
- typedef SOMLargeStruct MBOutboxLetterData; /* Derived from a struct of 124 bytes in size */
-
- typedef UInt32 MBMailItemType;
-
- /* Filters for MBGetMailItemCount */
- typedef UInt32 MBMailItemFilter;
-
- typedef SOMLargeStruct MBMailItemData; /* Derived from a struct of 304 bytes in size */
-
- /* Used to mark an item read or unread using MBMarkLetter */
- typedef UInt32 MBLetterReadStatus;
-
- /* Used to mark an item in or out of trash using MBMarkLetter */
- typedef UInt32 MBLetterTrashStatus;
-
- /**********************************************************/
- /* Changes Enumeration Data Structures */
- /***********************************************************/
- typedef UInt32 MBMailItemChangeType;
-
- typedef UInt32 MBNotificationMask;
-
- /***********************************************************/
- /* For mail item iterators */
- /***********************************************************/
- typedef UInt32 MBSortOrder;
-
- typedef UInt32 MBSortDirection;
-
- /* forward declaration */
-
-
- /*------------------------------------------------------------------------------*/
- /* Parameter Blocks for the Operations */
- /*------------------------------------------------------------------------------*/
- /**********************************************************/
- /* Mailbox Operations */
- /**********************************************************/
- /* Mounts the mailbox. Returns a mailboxRef which should be used on all future operations. */
- typedef SOMLargeStruct MBMountMailboxPB; /* Derived from a struct of 44 bytes in size */
-
- /* Unmounts the Mailbox. After this call, the mailboxRef is no longer valid. */
- typedef SOMLargeStruct MBUnmountMailboxPB; /* Derived from a struct of 32 bytes in size */
-
- /**********************************************************/
- /* Container and Mail Item Operations */
- /***********************************************************/
- /* Opens the container for use, returns a containerRef which should be used in all future Container operations */
- typedef SOMLargeStruct MBOpenContainerPB; /* Derived from a struct of 44 bytes in size */
-
- /* Closes the container and invalidates the containerRef */
- typedef SOMLargeStruct MBCloseContainerPB; /* Derived from a struct of 30 bytes in size */
-
- /* Reconnect open container to remote service */
- typedef SOMLargeStruct MBReconnectOpenContainerPB; /* Derived from a struct of 36 bytes in size */
-
- /* Returns the mail item with the specified mail sequence number */
- typedef SOMLargeStruct MBGetMailItemDataPB; /* Derived from a struct of 38 bytes in size */
-
- /* Returns the number of items in the container (filtered, if specified) */
- typedef SOMLargeStruct MBGetMailItemCountPB; /* Derived from a struct of 36 bytes in size */
-
- /*
- Allocates the memory and sets the Iterator to the first
- of the mail items of that type in the container.
- */
- typedef SOMLargeStruct MBCreateMailItemIteratorPB; /* Derived from a struct of 48 bytes in size */
-
- /* Dispose of the MBMailItemIterator */
- typedef SOMLargeStruct MBDisposeMailItemIteratorPB; /* Derived from a struct of 28 bytes in size */
-
- typedef SOMLargeStruct MBMailItemIteratePB; /* Derived from a struct of 32 bytes in size */
-
- typedef SOMLargeStruct MBResetMailItemIteratorPB; /* Derived from a struct of 28 bytes in size */
-
- /* MarkLetter Read/Unread and/or In Trash/Out of Trash. */
- typedef SOMLargeStruct MBMarkLetterPB; /* Derived from a struct of 42 bytes in size */
-
- /* Stores the MailItem locally. */
- typedef SOMLargeStruct MBCopyLocalPB; /* Derived from a struct of 48 bytes in size */
-
- typedef SOMLargeStruct MBCopyToFilePB; /* Derived from a struct of 46 bytes in size */
-
- /* Cancels the copy operation, if possible. */
- typedef SOMLargeStruct MBCancelCopyPB; /* Derived from a struct of 28 bytes in size */
-
- /* An irrevocable delete of an item from a container. */
- typedef SOMLargeStruct MBDeleteLetterPB; /* Derived from a struct of 34 bytes in size */
-
- /* Forces a MailItem to be sent right now. This operation only works on MailItems in the outbox.*/
- typedef SOMLargeStruct MBSendNowPB; /* Derived from a struct of 38 bytes in size */
-
- /**********************************************************/
- /* Notification and Changes Enumeration Operations */
- /***********************************************************/
- typedef OpaquePtr MBNotificationProcPtr;
- typedef OpaquePtr MBNotificationUPP;
- /* Allows a client to specify a callback routine and parameters. */
- typedef SOMLargeStruct MBRegisterNotificationPB; /* Derived from a struct of 48 bytes in size */
-
- /* Allows client to clear the callback info. */
- typedef SOMLargeStruct MBUnregisterNotificationPB; /* Derived from a struct of 28 bytes in size */
-
- /**********************************************************/
- /* Progress Indication Operations */
- /***********************************************************/
- /*
- Creates a progress indicator for tracking progress of a copy operation from
- MBCopyToFile or MBCopyLocal.
- */
- typedef SOMLargeStruct MBCreateProgressIndicatorPB; /* Derived from a struct of 28 bytes in size */
-
- /* Dispose the progress indicator that was previously allocated by MBCreateProgressIndicator. */
- typedef SOMLargeStruct MBDisposeProgressIndicatorPB; /* Derived from a struct of 28 bytes in size */
-
- /*
- Returns the current level of progress that has been completed.
- The following fields can be polled during the the move in order to provide a "progress"
- indicator. The operation will be done when workCompleted equals totalWorkAmount.
- totalWorkAmount is pretty much a random number and is not an indication of the amount of
- work involved.
- */
- typedef SOMLargeStruct MBGetCurrentProgressPB; /* Derived from a struct of 36 bytes in size */
-
- /**********************************************************/
- /* Miscellaneous Operations */
- /***********************************************************/
- /* Returns the LetterSpec of a letter for use with Mailer APIs. */
- typedef SOMLargeStruct MBGetLetterSpecPB; /* Derived from a struct of 38 bytes in size */
-
- /* Obtain a mail sequence number and open container reference from a letter spec */
- typedef SOMLargeStruct MBConvertLetterSpecPB; /* Derived from a struct of 38 bytes in size */
-
- /* Returns the containerID given a well known container type */
- typedef SOMLargeStruct MBGetContainerTokenPB; /* Derived from a struct of 44 bytes in size */
-
- /* Returns ContainerData for a given ContainerToken. */
- typedef SOMLargeStruct MBGetContainerDataFromTokenPB; /* Derived from a struct of 44 bytes in size */
-
- /**********************************************************/
- /* Contents Operations */
- /***********************************************************/
- /* Opens a letter that is currently in a container. */
- typedef SOMLargeStruct MBOpenLetterPB; /* Derived from a struct of 38 bytes in size */
-
- /* Opens a letter that is currently on the disk. */
- typedef SOMLargeStruct MBOpenDiskLetterPB; /* Derived from a struct of 98 bytes in size */
-
- /* Closes a letter that is currently open. */
- typedef SOMLargeStruct MBCloseLetterPB; /* Derived from a struct of 28 bytes in size */
-
- /* Opens a letter that is nested within another. */
- typedef SOMLargeStruct MBOpenNestedLetterPB; /* Derived from a struct of 32 bytes in size */
-
- /* Returns the path where the enclosures of a certain letter are kept. */
- typedef SOMLargeStruct MBReadEnclosureFSSpecPB; /* Derived from a struct of 98 bytes in size */
-
- /* Returns the path where the content of a certain letter is kept. */
- typedef SOMLargeStruct MBReadContentFSSpecPB; /* Derived from a struct of 98 bytes in size */
-
- /* Enumerates across the blocks of a letter. */
- typedef SOMLargeStruct MBEnumerateBlocksPB; /* Derived from a struct of 46 bytes in size */
-
- /* Returns a buffer of all the recipients of a certain letter */
- typedef SOMLargeStruct MBReadRecipientsPB; /* Derived from a struct of 48 bytes in size */
-
- /* Reads the attributes of a letter as specified in the requestMask. */
- /*
- buffer returned will contain the attribute values of
- the attributes indicated in responseMask,
- from the attribute indicated by the least significant bit set
- to the attribute indicated by the most significant bit set.
- Note that recipients - from, to, cc, bcc cannot be read using
- this call. Use GetRecipients to read these.
- */
- typedef SOMLargeStruct MBReadAttributesPB; /* Derived from a struct of 50 bytes in size */
-
- /* Reads the block of a letter. */
- typedef SOMLargeStruct MBReadBlockPB; /* Derived from a struct of 60 bytes in size */
-
- /* Returns a SignatureContext that can be used to verify a signature. */
- typedef SOMLargeStruct MBVerifySignaturePB; /* Derived from a struct of 32 bytes in size */
-
- /* Creates a letter given the relevant info about the letter. */
- typedef SOMLargeStruct MBCreateLetterPB; /* Derived from a struct of 142 bytes in size */
-
- /* Submits a letter for processing. */
- typedef SOMLargeStruct MBSubmitLetterPB; /* Derived from a struct of 58 bytes in size */
-
- /* Begin a nested mail item within some mail item. */
- typedef SOMLargeStruct MBBeginNestedLetterPB; /* Derived from a struct of 68 bytes in size */
-
- /* End the nested mail item. This function is always executed synchronously. */
- typedef SOMLargeStruct MBEndNestedLetterPB; /* Derived from a struct of 28 bytes in size */
-
- /* Add attributes to a mail item. */
- typedef SOMLargeStruct MBAddAttributePB; /* Derived from a struct of 42 bytes in size */
-
- /* Adds an enclosure to a mail item. This function is always executed synchronously. */
- typedef SOMLargeStruct MBAddEnclosurePB; /* Derived from a struct of 130 bytes in size */
-
- /* Adds a block to a mail item. */
- typedef SOMLargeStruct MBAddBlockPB; /* Derived from a struct of 60 bytes in size */
-
- /* Adds a letter to another one. */
- typedef SOMLargeStruct MBAddLetterPB; /* Derived from a struct of 32 bytes in size */
-
- /* Adds content to a mail item. */
- typedef SOMLargeStruct MBAddContentPB; /* Derived from a struct of 52 bytes in size */
-
- /* Reads the content of a mail item. */
- typedef SOMLargeStruct MBReadContentPB; /* Derived from a struct of 62 bytes in size */
-
- /* Adds another recipient to a mail item. */
- typedef SOMLargeStruct MBAddRecipientPB; /* Derived from a struct of 36 bytes in size */
-
- /* Gets a font name from the letter, given a font number */
- typedef SOMLargeStruct MBGetFontNameFromLetterPB; /* Derived from a struct of 36 bytes in size */
-
- typedef SOMLargeStruct MailboxParam; /* Derived from a struct of 2362 bytes in size */
-
- /*------------------------------------------------------------------------------*/
- /* FUNCTION PROTOTYPES */
- /*------------------------------------------------------------------------------*/
- /**********************************************************/
- /* Mailbox Operations */
- /***********************************************************/
- /**********************************************************/
- /* MailItem Operations */
- /***********************************************************/
- /**********************************************************/
- /* MailItem Changes Operations */
- /***********************************************************/
- /**********************************************************/
- /* Progress Indicator Operations */
- /**********************************************************/
- /**********************************************************/
- /* Miscellaneous Operations */
- /***********************************************************/
- /**********************************************************/
- /* Contents Operations */
- /***********************************************************/
- #endif
-
- #endif /* __SOMIDL__ */
-
- #endif /* __OCEMAILBOX_IDL__ */
-
-